using System;
using System.Data;
using RomanJendrusz.Amazon.ETL.Domain;
namespace RomanJendrusz.Amazon.ETL.Repositories
{
    public interface IUnitOfWork: IDisposable
    {
        IBookRepository BookRepository { get; }

        ICustomerRepository CustomerRepository { get; }

        ICustomerReviewRepository CustomerReviewRepository { get; }

        IAuthorRepository AuthorRepository { get; }
        
        ISellerOffersRepository SellerOffersRepository { get; }

        ETLConfiguration Configuration { get; }

        IDbTransaction Transaction { get; }
        
        IBrowseNodeRepository BrowseNodeRepository { get; }

        void SubmitChanges();
    }
}   